package it.mercatino.command;

import it.mercatino.hibernate.Ordine;
import it.mercatino.ordini.OrdineUtil;
import it.mercatino.utenti.UtenteUtil;

/**
 * Receiver per i comandi di aggiornamento di stato per gli ordini e
 * le registrazioni.
 * 
 * @author Luvi
 * @author Marco
 *
 */
public class CambioStato {
	
	/**
	 * Aggiorna lo stato di un ordine.
	 * 
	 * @param ordine - L'ordine da aggiornare.
	 * 
	 * @param statoOrdine - Il nuovo stato dell'ordine.
	 * 
	 * @param motivazioneRifiuto - Eventuale motivazione del rifiuto 
	 * dell'ordine.
	 */
	public void aggiornaStatoOrdine(Ordine ordine, int statoOrdine, 
		String motivazioneRifiuto) {
		
		OrdineUtil.getInstance().updateStatoOrdine(ordine, statoOrdine, motivazioneRifiuto);			
	}
	
	/**
	 * Aggiorna lo stato della registrazione di un Utente.
	 * 
	 * @param username - Lo username dell'Utente la cui registrazione deve
	 * essere aggiornata.
	 * 
	 * @param statoRegistrazione - Il nuovo stato della registrazione.
	 * 
	 * @param motivazioneRifiuto - Eventuale motivazione del rifiuto della
	 * richiesta di registrazione.
	 */
	public void aggiornaStatoRegistrazione(String username, int statoRegistrazione,
		String motivazioneRifiuto) {

		UtenteUtil.getInstance().aggiornaStatoRegistrazione(username, statoRegistrazione, motivazioneRifiuto);
	}		
}


